package com.nimitz.module.employee.domain;

import com.nimitz.common.annotation.Excel;
import com.nimitz.common.annotation.Excel.Type;
import com.nimitz.common.annotation.Excels;
import com.nimitz.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 转正记录表 emp_official
 */
@ApiModel(value = "EmpOfficial对象", description = "转正记录表")
public class EmpOfficial extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 转正id
     */
    @ApiModelProperty(value = "转正id")
    private Integer officialId;

    /**
     * 人员id
     */
    @ApiModelProperty(value = "人员id")
    private Integer employeeId;

    /**
     * 转正日期
     */
    @Excel(name = "转正日期")
    @ApiModelProperty(value = "转正日期")
    private String officialDate;

    /**
     * 审核人
     */
    @Excel(name = "审核人")
    @ApiModelProperty(value = "审核人")
    private String officialAuditName;

    /**
     * 审核日期
     */
    @Excel(name = "审核日期")
    @ApiModelProperty(value = "审核日期")
    private String officialAuditDate;

    /**
     * 人员对象
     */
    @Excels({@Excel(name = "人员名称", targetAttr = "employeeName", type = Type.EXPORT),
            @Excel(name = "警号", targetAttr = "employeeCode", type = Type.EXPORT)})
    @ApiModelProperty(value = "人员对象")
    private EmpEmployee officialEmployee;

    /**
     * 状态：0=待转正,1=已转正
     */
    @Excel(name = "状态", readConverterExp = "0=待转正,1=已转正")
    @ApiModelProperty(value = "状态")
    private String status;

    /**
     * 删除标志：0=存在,1=删除
     */
    private String delFlag;

    public Integer getOfficialId() {
        return officialId;
    }

    public void setOfficialId(Integer officialId) {
        this.officialId = officialId;
    }

    public Integer getEmployeeId() {
        return employeeId;
    }

    public void setEmployeeId(Integer employeeId) {
        this.employeeId = employeeId;
    }

    public String getOfficialDate() {
        return officialDate;
    }

    public void setOfficialDate(String officialDate) {
        this.officialDate = officialDate;
    }

    public String getOfficialAuditName() {
        return officialAuditName;
    }

    public void setOfficialAuditName(String officialAuditName) {
        this.officialAuditName = officialAuditName;
    }

    public String getOfficialAuditDate() {
        return officialAuditDate;
    }

    public void setOfficialAuditDate(String officialAuditDate) {
        this.officialAuditDate = officialAuditDate;
    }

    public EmpEmployee getOfficialEmployee() {
        return officialEmployee;
    }

    public void setOfficialEmployee(EmpEmployee officialEmployee) {
        this.officialEmployee = officialEmployee;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("officialId", getOfficialId())
                .append("employeeId", getEmployeeId())
                .append("officialDate", getOfficialDate())
                .append("officialAuditName", getOfficialAuditName())
                .append("officialAuditDate", getOfficialAuditDate())
                .append("officialEmployee", getOfficialEmployee())
                .append("status", getStatus())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
